package com.ruoyi.system.service.impl;

import java.util.List;
import com.ruoyi.common.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.system.mapper.ReBonusMapper;
import com.ruoyi.system.domain.ReBonus;
import com.ruoyi.system.service.IReBonusService;
import com.ruoyi.common.core.text.Convert;

/**
 * 分销积分设定Service业务层处理
 * 
 * @author ruoyi
 * @date 2023-12-22
 */
@Service
public class ReBonusServiceImpl implements IReBonusService 
{
    @Autowired
    private ReBonusMapper reBonusMapper;

    /**
     * 查询分销积分设定
     * 
     * @param id 分销积分设定主键
     * @return 分销积分设定
     */
    @Override
    public ReBonus selectReBonusById(Long id)
    {
        return reBonusMapper.selectReBonusById(id);
    }

    /**
     * 查询分销积分设定列表
     * 
     * @param reBonus 分销积分设定
     * @return 分销积分设定
     */
    @Override
    public List<ReBonus> selectReBonusList(ReBonus reBonus)
    {
        return reBonusMapper.selectReBonusList(reBonus);
    }

    /**
     * 新增分销积分设定
     * 
     * @param reBonus 分销积分设定
     * @return 结果
     */
    @Override
    public int insertReBonus(ReBonus reBonus)
    {
        reBonus.setCreateTime(DateUtils.getNowDate());
        return reBonusMapper.insertReBonus(reBonus);
    }

    /**
     * 修改分销积分设定
     * 
     * @param reBonus 分销积分设定
     * @return 结果
     */
    @Override
    public int updateReBonus(ReBonus reBonus)
    {
        reBonus.setUpdateTime(DateUtils.getNowDate());
        return reBonusMapper.updateReBonus(reBonus);
    }

    /**
     * 批量删除分销积分设定
     * 
     * @param ids 需要删除的分销积分设定主键
     * @return 结果
     */
    @Override
    public int deleteReBonusByIds(String ids)
    {
        return reBonusMapper.deleteReBonusByIds(Convert.toStrArray(ids));
    }

    /**
     * 删除分销积分设定信息
     * 
     * @param id 分销积分设定主键
     * @return 结果
     */
    @Override
    public int deleteReBonusById(Long id)
    {
        return reBonusMapper.deleteReBonusById(id);
    }

    /**
     * 查询分销积分设定
     *
     * @param accountType 分销积分设定主键
     * @return 分销积分设定
     */
    public ReBonus selectReBonusByAccountTypeAndLevel(String accountType){
        ReBonus reBonus=new ReBonus();

        reBonus.setAccountType(accountType);
        return reBonusMapper.selectReBonusByAccountTypeAndLevel(reBonus);
    }
}
